package br.com.mauricioreis;

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
import br.com.mauricioreis.db.Medida;

public class MedidaAlterarAct extends Activity {
    public EditText etNome;
    public EditText etDescricao;
    public Button btCancelar;
    public Button btAlterar;
    public Button btExcluir;
    public Medida medida;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.medida_alterar);
        Bundle extras = getIntent().getExtras();
        if (extras == null) {
            return;
        }
        // obtem o id da medida
        Integer idMedida = extras.getInt("idMedida", 0);
        // obtem a medida através do seu ID
        this.medida = new Medida();
        this.medida.setId(idMedida);
        this.medida = Medida.consultar(this, medida);
        // popula campos da tela
        etNome = (EditText) findViewById(R.id.medidaAlterarNome);
        etDescricao = (EditText) findViewById(R.id.medidaAlterarDescricao);
        etNome.setText(this.medida.getNome());
        etDescricao.setText(this.medida.getDescricao());
        montaBotaoCancelar();
        montaBotaoAlterar();
    }

    private void montaBotaoAlterar() {
        btAlterar = (Button) findViewById(R.id.medidaAlterarConfirmar);
        btAlterar.setOnClickListener(new OnClickListener() {
            @Override
            public void onClick(View arg0) {
                String nomeMedida = MedidaAlterarAct.this.etNome.getText().toString();
                String descricaoMedida = MedidaAlterarAct.this.etDescricao.getText().toString();
                // valida campos obrigatorios
                if (nomeMedida == null || nomeMedida.equals("")) {
                    Toast.makeText(MedidaAlterarAct.this, "O campo nome é obrigatório", Toast.LENGTH_LONG).show();
                    etNome.requestFocus();
                    return;
                }
                // altera medida
                MedidaAlterarAct.this.medida.setNome(nomeMedida);
                MedidaAlterarAct.this.medida.setDescricao(descricaoMedida);
                Medida.editar(MedidaAlterarAct.this, MedidaAlterarAct.this.medida);
                finish();
            }
        });

    }

    private void montaBotaoCancelar() {
        btCancelar = (Button) findViewById(R.id.medidaAlterarCancelar);
        btCancelar.setOnClickListener(new OnClickListener() {
            @Override
            public void onClick(View arg0) {
                finish();
            }
        });
    }
}
